package com.hiwan.system.dao.file;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.hiwan.framework.dao.annotation.MyBatisDao;
import com.hiwan.system.common.base.GenericDao;
import com.hiwan.system.pojo.FileInfo;

/**
 * 
 * Datetime   ： 2016年1月16日 下午1:49:35<br>
 * Title      :  FileInfoDao.java<br>
 * Description:   <br>
 * Company    :  hiwan<br>
 * @author cbj
 *
 */
@MyBatisDao
public interface FileInfoDao extends GenericDao<FileInfo, String> {

	/**
	 * 查询文件信息列表(不分页)
	 * 
	 * @param fileInfo
	 * @return
	 */
	public List<FileInfo> selectFileInfoList(@Param("fileId") String fileId, @Param("attachId")String attachId);

	/**
	 * 通过主键查询文件信息
	 * 
	 * @param busiId
	 * @return
	 */
	public FileInfo selectFileInfoById(@Param("fileId") String fileId, @Param("attachId")String attachId);
	
	
	public Integer getNextFileOrder(@Param("attachId") String attachId);

	public int updateOtherOrder(@Param("attachId") String attachId, @Param("maxFileOrder") int maxFileOrder, @Param("minFileOrder") int minFileOrder, @Param("step") int step);

	public int updateFileOrder(@Param("attachId") String attachId, @Param("fileId") String fileId, @Param("targetOrder") int targetOrder);

	/**
	 * 查询顺序为N的记录(根据FILE_ORDER从小到大排)
	 * @param attachId
	 * @param order
	 * @return
	 */
	public FileInfo selectFileInfoByOrder(@Param("attachId") String attachId, @Param("order") String order);
}
